<?

error_reporting(E_ERROR);

// Inicializo
/*********************************************************************************************************************/

include_once($_SERVER['DOCUMENT_ROOT'] . "/includes/loader.inc.php");

// Instancio las clases
$cuenta = new Cuenta();
$cuentas = new Cuentas();

// Defino los criterios de busqueda
$criterios = array(
	"numero" => array("filtro" => "ac.id_cuenta = |param|"),
	"sso" => array("filtro" => "|param|", "texto" => "SSO"),
	"dominio" => array("filtro" => "|param|"),
	"noc" => array("filtro" => "ac.id_noc = |param|", "texto" => "ID Noc"),
	"razon" => array("filtro" => "ac.nombre LIKE '%|param|%'", "texto" => "Raz&oacute;n social"),
	"documento" => array("filtro" => "ac.documento LIKE '%|param|%'"),
	"domicilio" => array("filtro" => "ac.domicilio LIKE '%|param|%'"),
	"ciudad" => array("filtro" => "ac.ciudad LIKE '%|param|%'"),
	"provincia" => array("filtro" => "ac.provincia LIKE '%|param|%'"),
	"cp" => array("filtro" => "ac.codigo_postal LIKE '%|param|%'", "texto" => "CP"),
	"telefono" => array("filtro" => "ac.telefono LIKE '%|param|%'")
);




// Obtengo los datos
/*********************************************************************************************************************/

// Tomo la accion
$accion = 'buscar';
if ($_REQUEST['mode'])
	$accion = addslashes($_REQUEST['mode']);

// Tomo el ID
if ($_REQUEST['id'])
	$id = addslashes($_REQUEST['id']);

// Tomo los parametros
if ($_REQUEST['params']) {
	$params_string = addslashes($_REQUEST['params']);
	// Guardamos una copia del string de los filtros con guiones
	$params_guiones = $params_string;
	// Y obtenemos el array de parametros
	$params = Funciones::getparams($params_string);
}





	


// Acciones
/*********************************************************************************************************************/


// Listar
if ($accion == 'listar') {
		
	// Aplico los filtros
	foreach ($criterios as $key_criterio => $value_criterio) {
		if ($params[$key_criterio]) {
			$filtros[$key_criterio] = str_replace('|param|', $params[$key_criterio], $value_criterio['filtro']);
		}
	}

	// Armo las opciones para la funcion listar
	$rpp = ($params['items']) ? $params['items'] : 30;
	$page = ($params['pagina']) ? $params['pagina'] : 1;
	$opciones  = array(
		'rpp' => $rpp,
		'page' => $page,
		'filtros' => $filtros
	);

	// Obtengo el listado
	$cuentas_listado = $cuentas->listar($opciones);

	// Agrego el enlace al detalle
	foreach($cuentas_listado['data'] as $key_cuenta => $value_cuenta) {
		$cuentas_listado['data'][$key_cuenta]['link'] = '/sic/admin/cuentas/ver/' . $value_cuenta['id_cuenta'];
	}

	// Armamos la URL que van a tener los botones
	$url_filtro = '/sic/admin/cuentas/listar/' . preg_replace('/items:(\d+)\/pagina:(\d+)\//', "", $params_guiones);

	// Armo el paginador con: URL base, pagina actual, resultados por pagina, pagina actual
	$paginador = Funciones::paginar($url_filtro, $rpp, $cuentas_listado['resultados'], $page);
	
	// Armo los carteles de filtros
	foreach ($filtros as $key_filtro => $value_filtro) {
		$cartel[] = array(
			'filtro' => $key_filtro,
			'valor' => $params[$key_filtro],
			'url' => preg_replace('/' . $key_filtro . ':([^\\/]+)\\/?/', '', $url_filtro)
		);
	};
	
}





// Ver
if ($accion == 'ver') {

	// Tomo los datos del cliente
	$cliente = $cuenta->info($id);
	$grupo = $cliente['cuenta']['grupo'];

	// Tomo los datos de su pais
	$pais = Paises::get($cliente['cuenta']['id_pais']);

	// Ordeno los datos a mostrar
	$datos = array(
		'nombre' => array('nombre' => 'Nombre', 'valor' => utf8_encode($cliente['cuenta']['nombre'])),
		'documento' => array('nombre' => 'Documento', 'valor' => $cliente['cuenta']['documento']),
		'telefono' => array('nombre' => 'Telefono', 'valor' => $cliente['cuenta']['telefono']),
		'condicion_iva' => array('nombre' => 'Condicion IVA', 'valor' => $cliente['cuenta']['condicion_iva']),
		'tipo_factura' => array('nombre' => 'Factura tipo', 'valor' => $cliente['cuenta']['tipo_factura']),
		'domicilio' => array('nombre' => 'Domicilio', 'valor' => utf8_encode($cliente['cuenta']['domicilio'])),
		'codigo_postal' => array('nombre' => 'Codigo postal', 'valor' => $cliente['cuenta']['codigo_postal']),
		'ciudad' => array('nombre' => 'Ciudad', 'valor' => $cliente['cuenta']['ciudad']),
		'provincia' => array('nombre' => 'Provincia', 'valor' => $cliente['cuenta']['provincia']),
		'pais' => array('nombre' => 'Pais', 'valor' => $pais['pais']),
		'id_noc' => array('nombre' => 'ID Noc', 'valor' => $cliente['cuenta']['id_noc'])
	);
	
	// Preparo los items a mostrar
	$items = array('productos' => 'producto', 'adicionales' => 'adicional');
	
	// Distingo items activos de inactivos
	foreach($items as $item_key => $item_value)
		foreach($cliente[$item_key] as $key_producto => $value_producto) {
			if (strtotime($value_producto['servicio_hasta']) > time())
				$_producto[$item_key]['activo'][$key_producto] = $value_producto;
			else
				$_producto[$item_key]['inactivo'][$key_producto] = $value_producto;
			unset($cliente[$item_key]);
		}
	$cliente = array_merge($cliente, $_producto);
	
	// Listo sus facturas
	$facturas = $cuenta->facturas($id);
	
	// Seteo el listado al que pertenece
	$back = $_SERVER['HTTP_REFERER'];
	
}

// Incluyo la interfaz
include('includes/tpl/header.tpl.php');
include('includes/tpl/cuentas.tpl.php');
include('includes/tpl/footer.tpl.php');

?>